package 开发规范;

public class index {
    public static void main(String[] args) {
        //开发规范：
        //前端部署在nginx，后端部署在tomcat
        //前后端要能正常交互，必须要有一套开发规范
        //这套规范就体现在接口文档里

        //前后端进行交互，可以基于Restful风格的接口

        //Restful开发规范：
        //REST：表述性状态转换，是一种软件架构风格

        //描述一个网络资源有两种风格：

        //传统风格：
        /*
        http://localhost:8080/user/getById?id=1             GET：查询id为1的用户
        http://localhost:8080/user/saveUser                 POST：新增用户
        http://localhost:8080/user/updateuser               POST：修改用户
        http://localhost:8080/user/deleteUser?id=1          GET：删除id为1的用户
        */
        //传统风格的缺点是：
        //1、完全根据自己的喜好来定义url（如 getById、saveUser）
        //2、请求方式随意

        //REST风格：
        /*
        http://localhost:8080/users/1           GET：查询id为1的用户
        http://localhost:8080/users             POST：新增用户
        http://localhost:8080/users             PUT：修改用户
        http://localhost:8080/users/1           DELETE：删除id为1的用户
        */
        //REST风格：
        //1、通过url来定位资源，而要做什么操作是不能通过url得到的
        //2、通过http动词来描述操作，http动词，就是请求方式
        //在REST风格中，GET用于查询操作，POST用于新增操作，PUT用于修改操作，DELETE用于删除操作

        //注意：
        //REST是风格，是约定方式，约定不是规定，可以打破
        //描述模块的功能通常使用复数，也就是加s的格式来描述，表示此类资源，而非单个资源。如：users、emps、books...


        //一个功能接口的开发流程：
        //1、查看页面原型，明确需求
        //2、阅读接口文档
        //3、思路分析
        //4、接口开发
        //5、接口测试
        //6、前后端联合调试



    }
}
